BigQuery でクエリ結果の並び替えができるようになりました(Preview)
こんにちは!エノカワです。
BigQuery でクエリ結果を並び替える機能が プレビュー となりました。
You can now sort your query results by using the sort menu next to a column name. This feature is in preview.
列名の横にある並べ替えメニューを使用して、クエリ結果を並べ替えることができるみたいです!
さっそく使ってみました。
並べ替えメニューを使用する
一般公開データセットのGoogle Trendsのクエリ結果で試してみます。
トップ画面の「Google トレンドのデモクエリを試す」の[このクエリを試す]をクリックします。
すると、下記クエリが入力されたエディタ画面が表示されます。
-- This query shows a list of the daily top Google Search terms. SELECT refresh_date AS Day, term AS Top_Term, -- These search terms are in the top 25 in the US each day. rank, FROM `bigquery-public-data.google_trends.top_terms` WHERE rank = 1 -- Choose only the top term each day. AND refresh_date >= DATE_SUB(CURRENT_DATE(), INTERVAL 2 WEEK) -- Filter to the last 2 weeks. GROUP BY Day, Top_Term, rank ORDER BY Day DESC -- Show the days in reverse chronological order.
直近二週間の Google 検索上位の用語リストを表示するクエリのようです。
[実行]をクリックして、クエリ結果を表示します。
列名の横に▼が表示されています!
昇順/降順に並び替え
Day
の横の▼をクリックすると、並び替えメニューが表示されました。
↑昇順に並び替えをクリックします。
Day
が昇順で並び替えられました。
Day
の▼の横に↑が表示され、昇順になっていることが分かるようになっていますね。
この状態で、↑(上向き矢印)をクリックしてみると、、、
矢印が逆方向(↑から↓)にひっくり返るアニメーションの後、Day
が降順で並び替えられました。
矢印ワンクリックで逆順に並び替えができるんですね。(便利!)
並び替えを解除
Day
の横の▼をクリックし、並び替えを解除をクリックします。
矢印の表示が消え、並び替えが解除されました。
ちなみに、Day
が並び替えられた状態でTop_Term
の横の▼から並び替えを実行することもできます。
Top_Term
は並び替えられますが、Day
の並び替えは解除されました。
複数列の並び替えは出来ないようです。
プレビュー表示では並べ替えメニューは表示されない
先ほどのクエリで使用したbigquery-public-data.google_trends.top_terms
テーブルデータのプレビュー表示です。
列名の横に▼は表示されていませんね。
テーブルデータのプレビュー表示では、並べ替え機能は使用できないようです。
並び替えで処理されるスキャン量が表示される
下記クエリでbigquery-public-data.google_trends.top_terms
テーブルデータ全件をクエリ結果に表示させます。
SELECT * FROM `bigquery-public-data.google_trends.top_terms`;
Day
の横の▼をクリックすると、、、
並び替えメニューに並び替えで 2.85 GB を処理しますと表示されました。
並び替えで処理されるスキャン量が表示されるようです。(親切!)
並び替えで実行されたクエリ
並び替えで実行されたクエリは、画面下部のクエリ履歴(個人履歴またはプロジェクト履歴)から確認することができます。
下記は、Day
を昇順で並び替えを実行したときのクエリです。
SELECT * FROM `{PROJECT_ID}._e85c78912642b1720bc431ae3d4edb397f9e538c.anon52023009_1536_4636_94a1_a9dddb466276` ORDER BY `Day` ASC
※プロジェクトIDの箇所は{PROJECT_ID}
に置き換えています。
一時テーブルに対してORDER BY
が実行されていることが分かりますね。
ちなみに、上記クエリの処理されたバイト数は0 Bになっていました。
Day
の並び替えメニューにスキャン量が表示されていなかったのはそのためのようです。
まとめ
以上、BigQuery でクエリ結果を並び替える機能を使ってみました。
これまで、並び替えのためにクエリを再実行したり、そのクエリ結果の最後のページに移動して逆順だとどうなるか確認したりしていました。
並び替え機能を使えばその手間が減るので、個人的に嬉しい機能です!
ぜひ活用してみて下さい。